AWK সহ বিভিন্ন প্রোগ্রামিং ভাষায় টেক্সট ডেটা প্রক্রিয়াকরণের সময়, ফাইল বা ইনপুট ডেটা সাধারণত ফিল্ড (Field) এবং রেকর্ড (Record) আকারে বিভক্ত করা হয়। এই বিভাজন ডেটা প্রক্রিয়াকরণকে আরও কার্যকরী করে তোলে। AWK-তে একটি রেকর্ড সাধারণত একটি লাইন হিসেবে ধরা হয়, এবং একটি লাইনের মধ্যে ফিল্ডগুলি স্পেস বা নির্দিষ্ট delimiter দিয়ে আলাদা করা হয়।
\n
) দ্বারা পৃথক করা হয়।ধরা যাক, একটি data.txt
ফাইল আছে যার মধ্যে নিম্নলিখিত ডেটা রয়েছে:
Alice 25 Engineer
Bob 30 Designer
Charlie 28 Manager
এখানে, প্রতিটি লাইন একটি রেকর্ড এবং প্রতিটি লাইনের পৃথক উপাদানগুলি (Alice, 25, Engineer) হল ফিল্ড।
AWK-তে ফিল্ডগুলি $
চিহ্ন দিয়ে উপস্থাপন করা হয়। $1
, $2
, $3
ইত্যাদি ব্যবহার করে আপনি প্রথম, দ্বিতীয়, তৃতীয় ফিল্ড ইত্যাদি নির্দিষ্ট করতে পারেন। পুরো রেকর্ডটি $0
দিয়ে উপস্থাপন করা হয়।
awk '{ print $1 }' data.txt
এই কমান্ডটি data.txt
ফাইলের প্রতিটি লাইনের প্রথম ফিল্ড প্রিন্ট করবে। আউটপুট হবে:
Alice
Bob
Charlie
awk '{ print $1, $3 }' data.txt
এই কমান্ডটি প্রতিটি লাইনের প্রথম এবং তৃতীয় ফিল্ড প্রিন্ট করবে। আউটপুট হবে:
Alice Engineer
Bob Designer
Charlie Manager
AWK ডিফল্টভাবে প্রতিটি লাইনকে একটি রেকর্ড হিসেবে গণ্য করে। তবে, আপনি কাস্টম delimiter ব্যবহার করে রেকর্ড পরিবর্তন করতে পারেন।
ধরা যাক, একটি CSV ফাইল রয়েছে যার মধ্যে কোলন (:
) দ্বারা ফিল্ড বিভক্ত:
Alice:25:Engineer
Bob:30:Designer
Charlie:28:Manager
এই ফাইল প্রক্রিয়াকরণের জন্য AWK-তে -F
ফ্ল্যাগ ব্যবহার করে delimiter নির্ধারণ করতে হবে:
awk -F ':' '{ print $1, $3 }' data.csv
এই কমান্ডটি প্রথম এবং তৃতীয় ফিল্ড প্রিন্ট করবে। আউটপুট হবে:
Alice Engineer
Bob Designer
Charlie Manager
AWK-তে FS
(Field Separator) এবং RS
(Record Separator) পরিবর্তন করে ফিল্ড এবং রেকর্ডের প্রক্রিয়াকরণ নিয়ন্ত্রণ করা যায়।
awk 'BEGIN { FS=":" } { print $1, $2 }' data.csv
এই কমান্ডে FS
পরিবর্তন করে কোলন (:
) দিয়ে ফিল্ড আলাদা করা হয়েছে।
awk 'BEGIN { RS="\n\n" } { print $1 }' data.txt
এই কমান্ডে RS
পরিবর্তন করে দুটি newline দিয়ে রেকর্ড আলাদা করা হয়েছে।
AWK এবং অন্যান্য প্রোগ্রামিং ভাষায় Field এবং Record প্রক্রিয়াকরণ একটি অত্যন্ত কার্যকরী পদ্ধতি, যা ব্যবহারকারীদের ডেটা বিশ্লেষণ এবং ম্যানিপুলেশন করতে সহায়তা করে। AWK-তে $
চিহ্ন ব্যবহার করে নির্দিষ্ট ফিল্ড প্রক্রিয়াকরণ করা যায় এবং FS
এবং RS
এর মাধ্যমে ফিল্ড এবং রেকর্ড বিভাজন নিয়ন্ত্রণ করা সম্ভব। এই বৈশিষ্ট্যগুলি ডেটা প্রক্রিয়াকরণকে আরও শক্তিশালী এবং কার্যকর করে।
common.read_more